import java.util.Scanner;

/**
 *  继承:
 *
 *  1.写一个Person类，有String类型的2个私有数据域 身份证号id,姓名name，
 *  实现getter和setter方法，实现初始化这3个数据域的有参构造方法.
 *
 * 2.写一个Person的子类Student类 ，有String类型的私有数据域学号sno，
 *  实现getter和setter方法，实现初始化id、name、sno数据域的有参数构造方法
 *
 * 3.写一个Person的子类Teacher类 ，有String类型的私有数据域岗位post，
 *  实现getter和setter方法，实现初始化id、name、post数据域的有参数构造方法
 *
 * 仅需提交Person  Student Teacher 这三个类，无需提交以下代码：
 * Main{
 *     main(String[] args){
 *         Person p=Person(,);
 *         Person s=Student(,,);
 *         Person t=Teacher(,,);
 *         System..println(s.getName());
 *         System..println(((Student) s).getSno());
 *         System..println(((Teacher) t).getPost());
 *     }
 * }
 */

// 1. 写一个Person类，有String类型的2个私有数据域 身份证号id,姓名name
// 实现getter和setter方法，实现初始化这3个数据域的有参构造方法.
class Person {
    private String id;
    private String name;

    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public Person(String name,String id) {
        this.id = id;
        this.name = name;
    }
}

// 2.写一个Person的子类Student类 ，有String类型的私有数据域学号sno，
// 实现getter和setter方法，实现初始化id、name、sno数据域的有参数构造方法
class Student extends Person {
    private String sno;

    public String getSno() {
        return sno;
    }
    public void setSno(String sno) {
        this.sno = sno;
    }

    public Student(String id, String name,String sno) {
        super(id,name);
        setId(id);
        setName(name);
        setSno(sno);
    }
}

// 3. 写一个Person的子类Teacher类 ，有String类型的私有数据域岗位post，
//    实现getter和setter方法，实现初始化id、name、post数据域的有参数构造方法
class Teacher extends Person {
    private String post;

    public String getPost() {
        return post;
    }
    public void setPost(String post) {
        this.post = post;
    }
    public Teacher(String id, String name, String post) {
        super(id,name);
        setPost(post);
        setName(name);
        setId(id);
    }
}

public class Test4 {
    public static void main(String[] args) {
        Person p = new Person("ls","002");
        Person s = new Student("002","ls","001");
        Person t = new Teacher("002","ls","pro");
        System.out.println(s.getName());
        System.out.println(((Student)s).getSno());
        System.out.println(((Teacher) t).getPost());
    }
}
